//package com.fenghen.jdbctempleplus.builder;
//
//import org.springframework.jdbc.core.JdbcTemplate;
//
//import java.util.ArrayList;
//import java.util.HashMap;
//import java.util.Map;
//
//public class UpdateBuilder {
//    private final Class<?> entityClass;
//    private final JdbcTemplate jdbcTemplate;
//    private final EntityParser entityParser;
//    private final Map<String, Object> updates = new HashMap<>();
//    private final List<Condition> conditions = new ArrayList<>();
//
//    public UpdateBuilder(Class<?> entityClass, JdbcTemplate jdbcTemplate, EntityParser entityParser) {
//        this.entityClass = entityClass;
//        this.jdbcTemplate = jdbcTemplate;
//        this.entityParser = entityParser;
//    }
//
//    public UpdateBuilder set(String field, Object value) {
//        updates.put(field, value);
//        return this;
//    }
//
//    public UpdateBuilder where(String condition, Object... params) {
//        conditions.add(new Condition(condition, params));
//        return this;
//    }
//
//    public int execute() {
//        EntityMeta meta = entityParser.parse(entityClass);
//        String sql = SqlBuilder.buildUpdateSql(meta, updates, conditions);
//        Map<String, Object> params = new HashMap<>(updates);
//        conditions.forEach(c -> params.putAll(c.getParams()));
//        return jdbcTemplate.update(sql, params);
//    }
//}